Productivity and Performance: Improving Consumability of Hardware Transactional Memory through a Real-World Case Study
نویسندگان
چکیده
Hardware transactional memory (HTM) is a promising technology to improve the productivity of parallel programming. However, a general agreement has not been reached on the consumability of HTM. User experiences indicate that HTM interface is not straightforward to be adopted by programmers to parallelize existing commercial applications, because of the internal limitation of HTM and the difficulties to identify shared variables hidden in the code. In this paper we demonstrate that, with well-designed encapsulation, HTM can deliver good consumability. Based on the study of a typical commercial application in supply chain simulations GBSE, we develop a general scheduling engine that encapsulates the HTM interface. With the engine, we can convert the sequential program to multi-threaded model without changing any source code for the simulation logic. The time spent on parallelization is reduced from two months to one week, and the performance is close to the manually tuned counterpart with fine-grained locks.
منابع مشابه
On Scalable and Flexible Transaction and Query Processing in Main-Memory Database Systems
The hardware landscape for database systems has changed dramatically over the past two decades. Today, the traditional database system architecture that was pioneered by System R and is implemented by IBM DB2, Microsoft SQL Server, Oracle and Postgres, shows weaknesses in all major areas of application of commercial database systems: operational transaction processing, decision support and busi...
متن کاملAn Integrated Hardware-Software Approach to Transactional Memory
Transactional memory has been proposed as a general and flexible way to allow programs to read and modify disparate primary-memory locations atomically as a single operation, much as a database transaction can atomically modify many records on disk. Hardware transactional memory supports atomicity through architectural means, whereas software transactional memory supports atomicity through lang...
متن کاملImproving Performance of Mining Equipment Through Enhancement of Speed Factor: A Case Study (Research Note)
Loading and hauling machineries are highly capital intensive equipment to procure, operate and maintain in surface mining operation. It must be borne in mind that with this huge and capital-intensive equipment, every second of its life time is absolutely important from the production and productivity point of view. As such, it is imperative to optimize the overall cycle time and speed factor of...
متن کاملSoftware Transactional Memory: Worst Case Execution Time Analysis
While real-time applications are becoming more and more concurrent and complex, the drive toward multicore systems raises new challenges related to the parallelization of such performance-critical applications. Transactional memory is an attractive concept for expressing parallelism for programming multicore systems as it avoids the problems of lock-based methods and eases programming. However,...
متن کاملTransactional IPC in Fiasco.OC
Already announced in 2007 for Sun’s Rock processor but later canceled, hardware transactional memory (HTM) finally found its way into general-purpose desktop and server systems and is soon to be expected for embedded and real-time systems. However, although current hardware implementations have their pitfalls, hindering an immediate adoption of HTM as a synchronization primitive for real-time o...
متن کامل